In the recent decades, Internet Protocol (IP-) based networks, such as private IP networks or the Internet, have become a viable base technology for voice and multimedia communication. While IP and its supporting protocols such as User Datagram Protocol (UDP), Transmission Control Protocol (TCP) and other protocols can, from a protocol technology viewpoint, allow for multipoint conferences not involving any centralized servers, most network topologies not involving servers have so many disadvantages that in practice, most multipoint conferences over IP involve a single centralized conference server. The purpose of the server can be to mix audio and (in case of multimedia conferences) video signals, enable conference control, admission control, keep state information of the conference, and many more services. In many cases, endpoints (virtually) connect to the server using IP technologies over IP networks or the Internet, and the server acts as the hub in a star topology network—that is, all endpoints maintain a direct connection with the server.
Conference servers can have many purposes. For example, they can                manipulate media streams (i.e. mixing of audio streams, tiling of video streams, switching of audio and/or video streams),        share between servers and endpoints real-time media plane conference state information, (such as, for example, Real-time Transport Control Protocol (RTCP) receiver reports), and.        share such control information required for the establishment and manipulation of media channels.        
Operations on application level data between multiple servers and clients has not received a comparable amount of attention as compared to the above uses of conference servers. In order to support such application level operations, conference servers and endpoints may be required to share application level state information, which can be in the form of a shared database. One standardized application protocol suite for application level data sharing and manipulation, ITU-T Rec. T.120 (ITU-T Rec. T.120 “Data protocols for multimedia conferencing”, 2007-1-13, available from http://www.itu.int/ITU-T/recommendations/index.aspx), and its companion recommendations referenced therein, allows for sharing of such state among servers and endpoints. However, the protocols used by H.120 rely on a virtual rooted tree network topology, wherein one dedicated server, located at the root of the tree and known as “controller” controls and maintains the state of the conference. Note that a rooted tree topology is a subclass of the general tree topology. In all tree topologies, there is one path between any two nodes, e.g. there are no circular connection structures. A rooted tree topology can have the further restriction that there is exactly one distinguished node of the tree, the root. In contrast, a general tree topology, also known as free tree, may lack that distinguished node.
The presence of a single dedicated server located at the root of the tree, which acts as a controller can create a single point of failure, which may have consequences for the reliability of a conference in case that server, and/or the physical and virtual connections to it, are not fully reliable. Further, if that server were intentionally leaving the conference, a new server would be dedicated as controller, and the virtual conference topology would have to be adjusted accordingly, which can be difficult to implement in a seamless way.
Another option for distributing state information between the servers and endpoints of a conference can be the media plane, specifically the Real-Time Control Protocol (RTCP, RFC 3550, available from www.ietf.org). While RTCP can be used to maintain a state among multiple conference servers and endpoints, the information of RTCP flows on the “media plane”, and can be sent over the Unified Datagram Protocol (UDP) and potentially over Internet Protocol (IP) Multicast, each of which may have reliability issues that can require an additional protocol overhead to ensure reliable transmission of state updates between servers and clients.
Accordingly, there exists a need for a mechanism that allows for an efficient sharing of such application level data between multiple servers and endpoints which allows for easy reconfiguration of a conference (including dropping any server).